Interactive Disassembler

Interactive Disassembler, vaak kortweg IDA of IDA Pro genoemd, is een disassembler van software, dus een programma dat computerprogramma's vertaalt van de binaire machinetaal naar voor de programmeur leesbaardere assembleercode. Het programma is oorspronkelijk als shareware ontwikkeld door Ilfak Guilfanov, een Russische softwareontwikkelaar en beveiligingsexpert. Later werd het programma verkocht als commercieel product door DataRescue, een Belgisch bedrijf, dat er verbeteringen in aanbracht en het onder de naam IDA Pro verkocht. Nog altijd is er ook een gratis versie van de software beschikbaar, maar deze versie is beperkt qua functionaliteit.

In 2007 startte Guilfanov het bedrijf Hex-Rays, waarmee hij de ontwikkeling van een extensie voor IDA, de Hex-Rays Decompiler, verzorgde. Sinds januari 2008 verzorgt Hex-Rays de ontwikkeling en support van IDA Pro zelf ook.

IDA Pro ondersteunt diverse formaten van uitvoerbare bestanden voor verschillende processoren en besturingssystemen, zoals Microsoft Windows, Mac OS X en Linux. Verder zijn er verschillende commerciële plug-ins voor dit programma, zoals een plug-in die assembleercode kan omzetten in C-code, en een die programma's die zijn gecompileerd met een C/C++-compiler kan disassembleren. De laatste volledige versie van IDA Pro is een commercieel softwarepakket. Vroegere versies, die minder functionaliteit bezaten dan de huidige volledige versie, waren wel gratis.

In veel gevallen kan IDA variabelen en functies van een gecompileerd programma herkennen en aan de gebruiker tonen. Zelfs bibliotheken die door programma's worden gebruikt kunnen door IDA worden herkend. Dit gebeurt met behulp van de Fast Library Identification and Recognition Technology (FLIRT), dit is Engels voor "Technologie voor de snelle herkenning en identificatie van bibliotheken".

Een kenmerk van IDA is, dat het veel interactiviteit mogelijk maakt. De gebruiker van het programma kan bijvoorbeeld annotaties aanbrengen en aanpassingen maken aan de vertaalslagen, waarmee onvolkomenheden van automatische vertalingen van binaire code naar assembleercode handmatig verbeterd kunnen worden. De gebruiker kan tussentijdse resultaten ook opslaan in de IDA Pro-database, een gegevensbestand voor informatie van dit programma. Hierin kunnen aantekeningen worden opgeslagen, alsmede namen die de gebruiker zelf geeft aan ontdekte functies van code die geanalyseerd wordt.

De grafische gebruikersomgeving van IDA Pro toont informatie in verschillende vensters. Zo worden functies van een programma dat geanalyseerd wordt in een ander venster getoond dan namen, datastructuren en strings (reeksen van alfanumerieke tekens). IDA Pro kan ook grafische representaties van analyses tonen, zoals stroomdiagrammen.

In feite zijn er verschillende commerciële versies van IDA Pro beschikbaar. Een uitgebreidere versie van het programma heeft meer mogelijkheden, zoals de ondersteuning van meer soorten processoren. Binaire formaten van uitvoerbare bestanden die worden ondersteund, zijn onder meer Portable Executable (PE), Common Object File Format (COFF), Executable and Linking Format (ELF), en a.out.


From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by razib.in